--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Node / ReticulumProjects / MeshChatX.git / files / meshchatx / src / frontend / js / announceIntervalSliderMap.js
Displaying Raw • Download
meshchatx/src/frontend/js/announceIntervalSliderMap.js e5756d7ab065475a18acdcafc008a767fcff87e0 (e5756d7a) Text, 913 B
T8b949e// SPDX-License-Identifier: 0BSD AND MIT
T8b949e/** High-resolution slider positions for smooth dragging (minutes 1..1440). */
Tff7b72export Tff7b72const Te6edf3ANNOUNCE_SLIDER_POS_MAX Tff7b72= T79c0ff2047Tb4b4b4;
Tff7b72const Te6edf3MIN_MINUTES Tff7b72= T79c0ff1Tb4b4b4;
Tff7b72const Te6edf3MAX_MINUTES Tff7b72= T79c0ff1440Tb4b4b4;
T8b949e/**
* @param {number} pos
* @returns {number} Announce interval in minutes (1..1440).
*/
Tff7b72export Tff7b72function Te6edf3announceSliderPosToMinutesTb4b4b4(Te6edf3posTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3p Tff7b72= Tffa657MathTb4b4b4.Te6edf3maxTb4b4b4(T79c0ff0Tb4b4b4, Tffa657MathTb4b4b4.Te6edf3minTb4b4b4(Te6edf3ANNOUNCE_SLIDER_POS_MAXTb4b4b4, Tffa657MathTb4b4b4.Te6edf3roundTb4b4b4(Tffa657NumberTb4b4b4(Te6edf3posTb4b4b4) Tff7b72|| T79c0ff0Tb4b4b4)Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72return Tffa657MathTb4b4b4.Te6edf3roundTb4b4b4(Te6edf3MIN_MINUTES Tff7b72+ Tb4b4b4(Te6edf3p Tff7b72/ Te6edf3ANNOUNCE_SLIDER_POS_MAXTb4b4b4) Tff7b72* Tb4b4b4(Te6edf3MAX_MINUTES Tff7b72- Te6edf3MIN_MINUTESTb4b4b4)Tb4b4b4)Tb4b4b4;
Tb4b4b4}
T8b949e/**
* @param {number} minutes
* @returns {number} Slider position 0 .. ANNOUNCE_SLIDER_POS_MAX
*/
Tff7b72export Tff7b72function Te6edf3announceMinutesToSliderPosTb4b4b4(Te6edf3minutesTb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3m Tff7b72= Tffa657MathTb4b4b4.Te6edf3maxTb4b4b4(Te6edf3MIN_MINUTESTb4b4b4, Tffa657MathTb4b4b4.Te6edf3minTb4b4b4(Te6edf3MAX_MINUTESTb4b4b4, Tffa657MathTb4b4b4.Te6edf3roundTb4b4b4(Tffa657NumberTb4b4b4(Te6edf3minutesTb4b4b4) Tff7b72|| Te6edf3MIN_MINUTESTb4b4b4)Tb4b4b4)Tb4b4b4)Tb4b4b4;
Tff7b72return Tffa657MathTb4b4b4.Te6edf3roundTb4b4b4(Tb4b4b4(Tb4b4b4(Te6edf3m Tff7b72- Te6edf3MIN_MINUTESTb4b4b4) Tff7b72/ Tb4b4b4(Te6edf3MAX_MINUTES Tff7b72- Te6edf3MIN_MINUTESTb4b4b4)Tb4b4b4) Tff7b72* Te6edf3ANNOUNCE_SLIDER_POS_MAXTb4b4b4)Tb4b4b4;
Tb4b4b4}
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────